package rpc.registry;

import rpc.remote.dto.RpcRequest;

import java.net.InetSocketAddress;

/**
 * @ClassName: ServiceDiscovery
 * @Description: 在zk中查找服务端
 * @author: Kowk
 * @since:1.0.0
 */
public interface ServiceDiscovery {

    /**
    * @Description:  通过服务端的名来寻找服务
    * @Param： request rpc服务的实体类，包含了整的服务名称（class name+group+version）
    * @return:  服务端的地址
    */
    //InetSocketAddress类实现 IP 套接字地址（IP 地址 + 端口号）。它还可以是一个对（主机名 + 端口号），在此情况下，将尝试解析主机名。
    InetSocketAddress lookupService(RpcRequest request);
}
